<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"><HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
<title>Catching Up</title>

</HEAD>
<BODY BGCOLOR="#ffffff">
<H1 CLASS="Head">
Catching Up </H1>
<P CLASS="Para">
While you are working in the workbench, others may be releasing changes to the stream. To update
the resources in your workbench, you may &quot;catch up&quot; with the stream.</P>
<P CLASS="Para">
You control when you choose to catch up with a stream and
which incoming changes from a stream you want to accept into the workbench.</P>
<DIV CLASS="Topic">
<h2>Incoming &amp; Outgoing Changes</h2>
<P CLASS="Para">
When you catch up to a stream, you will see changes that have been released to the stream
since you last caught up. If you accept these incoming changes, they are incorporated into your local workbench. </P>
<P CLASS="Para">
If your local workbench contains any outgoing changes that conflict with incoming changes from the stream, then you must
<a href="#DealingWithConflicts"> merge the conflicting changes</a> in your local workbench as necessary.</P>
<DIV CLASS="Note">
<P CLASS="Para">
Note:	The stream itself is not changed when you catch up. When you accept incoming changes, these changes are applied to your workbench. The stream is only changed when you release your outgoing changes.</P>
</DIV>
</DIV>
<DIV CLASS="Topic">
<h2>
Catch Up Views</h2>
<DIV CLASS="XRefList">
<P CLASS="Para">
Related Topics:</P>
<LI CLASS="Item">
<a href="ref-51.htm">See Team Programming Model</a></LI>
<LI CLASS="Item">
<a href="ref-52.htm">See Synchronizing</a></LI>
</DIV>
<DIV CLASS="XRefList">
<LI CLASS="Item">
<a href="ref-54.htm">See Releasing</a></LI>
</DIV>
<DIV CLASS="Subtopic">
<h3>
Structure Compare Pane</h3>
<P CLASS="Para">
This pane allows you to view the high-level structural differences between a repository
resource and a local workbench resource.</P>
</DIV>
<DIV CLASS="Subtopic">
<h3>
Source Compare Pane</h3>
<P CLASS="Para">
This pane allows you to see specific, line-by-line differences between a repository
resource and a local workbench resource.</P>
</DIV>
</DIV>
<DIV CLASS="Topic">
<h2>
<a name="DealingWithConflicts">Dealing with Conflicting Changes</a></h2>
<P CLASS="Para">
When catching up or releasing you may encounter
conflicts.&nbsp; A conflict occurs when you have locally modified a resource for
which a more recent version is available in the stream.&nbsp;Specifically, the
stream will contain a version newer than the base version of your resource. In this situation
you can choose to do one of the following:</P>
<ol>
  <li>
    <p CLASS="Para">You can take the change from the stream (catch up to it),
    discarding your local work. This could occur if you have made unintended
    changes locally, or if you realize that the version in the stream is better
    than yours. Overwriting your local changes should be done with caution since
    you are in essence throwing work out.</li>
  <li>
    <p CLASS="Para">You can release your change, overwriting the version in the
    stream. This should be done with great caution since you are in essence
    throwing away someone else's work.&nbsp; In particular, the change you are
    overwriting may have other dependencies in the stream (e.g. there may be
    other incoming changes which depend on the conflict).</li>
  <li>
    <p CLASS="Para">You can merge your work and the stream resource, saving
    locally the merged resource. You may then later choose to release this
    merged result.</li>
</ol>
<P CLASS="Para">
Typically, you will want to merge (choice 3) because of the loss of work issues
with choices 1&amp;2.</P>
<h2>
<a name="MergingChanges">Merging Changes</a></h2>
<P CLASS="Para">The Synchronize View indicates those resources which are in
conflict with stream. For a given resource in conflict, typically you will want
to merge your changes with changes in the stream's resource.</P>
<P CLASS="Para">For example, lets assume that both you and another team member
have modified the same html page.&nbsp; Selecting that resource in the
Synchronize view will display a comparison of the local resource and the stream
version.&nbsp; By cycling through and merging the individual changes, you can decide for each change whether to accept the incoming change, reject it, or merge it with
your local changes.&nbsp; When you are finished merging, you save your changes.
This overwrites your local resource with the result of the merge.&nbsp; You can
subsequently release this merged resource.</P>
<P CLASS="Para">
You can merge differences in the Catch Up/Release view on two levels.</P>
<DIV CLASS="Subtopic">
<h3>
Whole Document</h3>
<P CLASS="Para">
In the Structure Compare editor, select the resource
that you want to merge, so that the resource is displayed in the Text Compare editor. In the Text Compare editor, click the Copy whole
document from right to left button to entirely replace the text in your local
editor with the contents of the stream resource.</P>
</DIV>
<DIV CLASS="Subtopic">
<h3>
Current Change</h3>
<P CLASS="Para">In the Text Compare editor, either use the Select Next Change and Select Previous Change buttons to navigate to the change that you want to merge,
or simply click in either source pane somewhere in the desired change difference fragment. Click the Copy current
change from right to left button as needed to overwrite the highlighted fragment either
with the corresponding modification in the stream.</P>
</DIV>
</DIV>
<P>&nbsp;<br>
<img src = ../ngibmcpy.gif width="195" height="12">
</P>


</BODY>
</HTML>
